package com.jrx.anytxn.customer.dto.customer.medical;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.jrx.anytxn.common.uitl.DateUtils;
import com.jrx.anytxn.customer.dto.customer.medical.CustomerLimitFrozeBaseRes;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 信用就医业务，cms客户端发起冻结、解冻操作处理结果返回
 *
 * @author user
 * @date 2022/8/9 14:30
 */
public class CustomerLimitFrozeQueryRes extends CustomerLimitFrozeBaseRes implements Serializable {
    private static final long serialVersionUID = -7052966390686841231L;



    /**
     * 客户-产品对应的额度
     */
    private BigDecimal limitAmt;

    /**
     * 客户-产品对应的可用额度
     */
    private BigDecimal availableLimit;

    /**
     * 客户-产品对应额度的生效日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date effectiveDate;

    /**
     * 客户-产品对应额度的失效日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date expiryDate;

    /**
     * 在用合同编号
     */
    @ApiModelProperty(value = "在用合同编号", example = "1122332")
    private String contractNumber;


    /**
     * 获取状态	0 = 失效，1正常，2=冻结
     * @return limitStatus String
     */
    @ApiModelProperty(value="状态 0= 失效，1正常，2=冻结",example="1")
    private String limitStatus;


    public BigDecimal getLimitAmt() {
        return limitAmt;
    }

    public void setLimitAmt(BigDecimal limitAmt) {
        this.limitAmt = limitAmt;
    }

    public BigDecimal getAvailableLimit() {
        return availableLimit;
    }

    public void setAvailableLimit(BigDecimal availableLimit) {
        this.availableLimit = availableLimit;
    }

    public Date getEffectiveDate() {
        return effectiveDate;
    }

    public void setEffectiveDate(Date effectiveDate) {
        this.effectiveDate = effectiveDate;
    }

    public Date getExpiryDate() {
        return expiryDate;
    }

    public void setExpiryDate(Date expiryDate) {
        this.expiryDate = expiryDate;
    }

    public String getContractNumber() {
        return contractNumber;
    }

    public void setContractNumber(String contractNumber) {
        this.contractNumber = contractNumber;
    }

    public String getLimitStatus() {
        return limitStatus;
    }

    public void setLimitStatus(String limitStatus) {
        this.limitStatus = limitStatus;
    }

    @Override
    public String toString() {
        return "CustomerLimitFrozeQueryRes{" +
                ", availableLimit='" + availableLimit == null ? null : availableLimit.toString() + '\'' +
                ", limitAmt='" + limitAmt == null ? null : limitAmt.toString() + '\'' +
                ", effectiveDate='" + DateUtils.format(effectiveDate) + '\'' +
                ", expiryDate='" + DateUtils.format(expiryDate) + '\'' +
                ", contractNumber='" + contractNumber + '\'' +
                ", limitStatus='" + limitStatus + '\'' +
                ", super='" + super.toString() + '\'' +
                '}';
    }
}
